//
//package com.projectxxxxxxxxxx.email;
//
//import java.security.Security;
//import java.util.Properties;
//
//import javax.activation.CommandMap;
//import javax.activation.MailcapCommandMap;
//import javax.mail.BodyPart;
//import javax.mail.Message;
//import javax.mail.Multipart;
//import javax.mail.PasswordAuthentication;
//import javax.mail.Session;
//import javax.mail.Transport;
//import javax.mail.internet.InternetAddress;
//import javax.mail.internet.MimeBodyPart;
//import javax.mail.internet.MimeMessage;
//import javax.mail.internet.MimeMultipart;
//
//import android.util.Log;
//
//import com.projectxxxxxxxxxx.Constants;
//
//public class MailSenderClass extends javax.mail.Authenticator {
//    private final String mailhost = "smtp.gmail.com";
//    private final String user;
//    private final String password;
//    private final Session session;
//
//    private final Multipart _multipart;
//
//    static {
//        Security.addProvider(new JSSEProvider());
//    }
//
//    public MailSenderClass(String user, String password) {
//        this.user = user;
//        this.password = password;
//
//        _multipart = new MimeMultipart();
//
//        // add handlers for main MIME types
//        MailcapCommandMap mc = (MailcapCommandMap) CommandMap.getDefaultCommandMap();
//        mc.addMailcap("text/html;; x-java-content-handler=com.sun.mail.handlers.text_html");
//        mc.addMailcap("text/xml;; x-java-content-handler=com.sun.mail.handlers.text_xml");
//        mc.addMailcap("text/plain;; x-java-content-handler=com.sun.mail.handlers.text_plain");
//        mc.addMailcap("multipart/*;; x-java-content-handler=com.sun.mail.handlers.multipart_mixed");
//        mc.addMailcap("message/rfc822;; x-java-content-handler=com.sun.mail.handlers.message_rfc822");
//        CommandMap.setDefaultCommandMap(mc);
//
//        Properties props = new Properties();
//        props.setProperty("mail.transport.protocol", "smtp");
//        props.setProperty("mail.host", mailhost);
//        props.put("mail.smtp.auth", "true");
//        props.put("mail.smtp.port", "465");
//        props.put("mail.smtp.socketFactory.port", "465");
//        props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
//        props.put("mail.smtp.socketFactory.fallback", "false");
//        props.setProperty("mail.smtp.quitwait", "false");
//        props.setProperty("mail.debug", "true");
//
//        session = Session.getDefaultInstance(props, this);
//    }
//
//    @Override
//    protected PasswordAuthentication getPasswordAuthentication() {
//        return new PasswordAuthentication(user, password);
//    }
//
//    public synchronized void sendMail(String subject, String body, String sender, String recipients)
//            throws Exception {
//        try {
//            MimeMessage message = new MimeMessage(session);
//
//            message.setSender(new InternetAddress(sender));
//            message.setSubject(subject);
//            if (recipients.indexOf(',') > 0)
//                message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recipients));
//            else
//                message.setRecipient(Message.RecipientType.TO, new InternetAddress(recipients));
//
//            BodyPart messageBodyPart = new MimeBodyPart();
//            messageBodyPart.setText(body);
//            _multipart.addBodyPart(messageBodyPart);
//
//            message.setContent(_multipart);
//
//            Transport.send(message);
//        } catch (Exception e) {
//            Log.e(Constants.LOG_TAG, e.getMessage(), e);
//            throw e;
//        }
//    }
// }
